The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent the work is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure.
A host device such as a computer, smart phone or other device includes memory to store data. The memory may include a cache that is used to improve system performance. The cache stores data so that future requests for that data can be handled more quickly. The data that is stored within the cache may include values that were previously used and/or copies of values that are stored elsewhere.
If data requested by the host is stored in the cache, a cache hit occurs and the cache returns the data. Otherwise a cache miss occurs and the data is fetched from its original storage location. Performance improves as the number of cache hits relative to cache misses increases. However, cache is more expensive than standard memory. Therefore, the cache is usually quite a bit smaller than the standard memory. Designers tend to balance cost (which increases with cache size) and performance (which also increases with cache size). As can be appreciated, management of the cache can significantly improve cache performance. Since the cache is relatively small, it is important to remove duplicate data.